<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <input type="text" oninput="mobileInput(this.value)">
</head>

<body>
  <script>
    // Array.from方法可以将 Set 结构转为数组。
    const items = new Set([1, 3, 4, 5, 6, 6, 7, 7])
    console.log(items)
    const arr = Array.from(items)
    console.log(arr) // [1,3,4,5,7]
<<<<<<< HEAD
    function mobileInput(value) {
      if(value.length==11) {
        console.log(value)
      }
    }
    function mobileInput(value) {
      if(value.length==11) {
        console.log(value)
      }
    }
=======
    // keys返回健明
    for (let set of items.keys()) {
      console.log(set); // 1, 3, 4, 5, 6, 7
    }
    // values返回键值
    for (let set of items.values()) {
      console.log(set); // 1, 3, 4, 5, 6, 7
    }
    // entries方法返回的遍历器，同时包括键名和键值，所以每次输出一个数组，它的两个成员完全相等。
    for (let set of items.entries()) {
      console.log(set); // [1, 1] [3, 3] [4, 4] [5, 5] [6, 6] [7, 7]
    }
    // 简便写法
    const item2 = new Set(['a', 'b', 'c', 'd'])
    for (const set of item2) {
      console.log(set);
    }

    // 数组的map和filter方法也可以间接用于 Set 了。
    let set = new Set([1, 2, 3]);
    set = new Set([...set].map(x => x * 2));
    console.log(set) // Set(3) {2, 4, 6}
>>>>>>> b9d3629d67f297aa2d2d76e2f97334a7f114ae54
  </script>
</body>

</html>